Docker Compose
container間のリンクを簡単に作ってくれて、結果として? 複数コンテナの管理を簡単にするツール?
a tool for defining and running multi-container Docker applications.
How: Using Compose is 3 steps:
define app's env with Dockerfile file
define Service in docker-compose.yml
run docker-compose up
日本語にすると、
個別にDockerFileを書いて、imageを設計する。
docker-compose.ymlでそれらのサービスのservice定義して、containerとして設定する
upする。
docker-compose.yml, yamlの書き方 version, services, volumesの3つを書く。(基本は)
version:
どのversionか気にしておく
記述形式がバージョンあがるにつれ、少しづつ変わるので。
services:
ここが設定の中心部分。
サービス名, buildファイルの場所、ports, volumes, linksなど。
build
path指定
contextを使ったもの context?
Dockerfileがあるpath or url or git (contextなら、web上(違うscheme)でも指定できる利点
volumes:
bindの設定とかは、3.2からなので、少なくとも、 version:3.2 と書かないといけない
version up で廃止になったものは少なさそうなので、大きめのバージョンを書いておくほうが無難? 自信ないが。
docker-composeのコマンド
up, down, build, configくらいしかつかってないが、気になることがあれば追記。
contains an invalid type, it should be a string
こんなエラーが出た。
文字列で記述しろとかいてあるけど、マニュアルだと、配列のあとで、key=value....
version違いだった。
/tmp/_xxxみたいなエラー
tmux上でやってると、windowによってエラーがでたりでなかったりなので、そこに問題があるのかも。